home *** CD-ROM | disk | FTP | other *** search
/ Risc World 3 / Risc World 3.iso / SOFTWARE / ISSUE4 / ZAP / !Zap / Code / Extensions / LineEditor / SWIs < prev    next >
Text File  |  2002-11-03  |  5KB  |  173 lines

  1. LineEditor SWIs
  2.  
  3. -----------------------------------------------------------------------------
  4.  
  5. LineEditor_SetOptions                    &83880
  6.  
  7.  Entry: R0 = buffer size (in kilobytes), or 0 for default
  8.     R1 = flag bits
  9.         Bit  Meaning if set
  10.         0    TaskWindows have local buffers
  11.         1    Trailing dots will be appended to directory completions
  12.         2    Default to overtype mode
  13.         3    Keep duplicate lines in history
  14.         4    Don't do ~ expansion
  15.         5    Don't de !-type events (eg !!)
  16.         6    Don't do ^two^three type replacements
  17.     R2 = minimum length to record
  18.     R3 = maximum length to record (0 for no maximum)
  19.     R4 = cursor shapes
  20.         Byte 0 controls the normal cursor shape
  21.         Byte 1 controls the overtype cursor shape
  22.            Bit     When clear   When set
  23.            0     underline    block
  24.            1     flashing     steady
  25.  
  26.  Exit:  -
  27.  
  28.  Use:    Sets the global options.
  29.  
  30.  Flag bits:
  31.  
  32.  Cursor shapes:
  33.  
  34. -----------------------------------------------------------------------------
  35.  
  36. LineEditor_GetOptions                    &83881
  37.  
  38.  Entry: -
  39.  
  40.  Exit:  R0 = buffer size (in kilobytes), or 0 for default
  41.     R1 = flag bits
  42.          (see LineEditor_SetOptions)
  43.     R2 = minimum length to record
  44.     R3 = maximum length to record (0 for no maximum)
  45.     R4 = cursor shapes
  46.          (see LineEditor_SetOptions)
  47.  
  48.  Use:    Reads the global options.
  49.  
  50.  
  51. -----------------------------------------------------------------------------
  52.  
  53. LineEditor_CreateBuffer                    &83882
  54.  
  55.  Entry: R0 = buffer size, or 0 for default
  56.     R1 = expansion word (0) / task handle / -1
  57.     R2 = expansion word if R1 is taskhandle / unused
  58.  
  59.  Exit:  R0 = history buffer ID / 0 if can't create
  60.  
  61.  Use:    Creates a new private history buffer. If R1 is a task handle, then
  62.     the buffer will be deleted automatically when that task quits.
  63.  
  64. -----------------------------------------------------------------------------
  65.  
  66. LineEditor_DeleteBuffer                    &83883
  67.  
  68.  Entry: R0 = history buffer ID
  69.  
  70.  Exit:    -
  71.  
  72.  Use:    Deletes the given private history buffer.
  73.  
  74. -----------------------------------------------------------------------------
  75.  
  76. LineEditor_SetPos                    &83884
  77.  
  78.  Entry:    R0 = history buffer ID
  79.     R1 = line number / special code
  80.  
  81.  Exit:    -
  82.  
  83.  Use:    Sets the position in the specified history buffer. (The first line is
  84.     line number 0; the last line is always blank.)
  85.  
  86.  Special codes:
  87.     Value       Position
  88.     negative   number of lines from the end of the history buffer
  89.     &7FFFFFFF  last line (end of buffer)
  90.     &80000000  previous line, wrapping to end
  91.     &80000001  previous line, stopping at start
  92.     &80000002  next line, stopping at end
  93.     &80000003  next line, wrapping to start
  94.  
  95. -----------------------------------------------------------------------------
  96.  
  97. LineEditor_GetPos                    &83885
  98.  
  99.  Entry:    R0 = history buffer ID
  100.  
  101.  Exit:    R1 = line number / special code
  102.  
  103.  Use:    Reads the position in the specified history buffer.
  104.  
  105. -----------------------------------------------------------------------------
  106.  
  107. LineEditor_GetLine                    &83886
  108.  
  109.  Entry:    R0 = history buffer ID
  110.     R1 -> text buffer
  111.     R2 = text buffer length
  112.  
  113.  Exit:  R2 = the length of the text in the buffer (excluding the terminator)
  114.  
  115.  Use:    Reads the line at the current position in the specified history
  116.     buffer. The line will be NUL-terminated.
  117.  
  118. -----------------------------------------------------------------------------
  119.  
  120. LineEditor_AppendLine                    &83887
  121.  
  122.  Entry: R0 = history buffer ID
  123.     R1 -> text, ctrl terminated
  124.  
  125.  Exit:    -
  126.  
  127.  Use:    Appends a line of text to the history; this line becomes the new last
  128.     line.
  129.  
  130. -----------------------------------------------------------------------------
  131.  
  132. LineEditor_DeleteLine                    &83888
  133.  
  134.  Entry:    R0 = history buffer ID
  135.  
  136.  Exit:    -
  137.  
  138.  Use:    Deletes the last line from the specified history.
  139.  
  140. -----------------------------------------------------------------------------
  141.  
  142. LineEditor_ReadInfo                    &83889     from 2.73
  143.  
  144.  Entry:    R0 = task handle (of a taskwindow)
  145.  Exit:  R0 = length of line currently being edited in that taskwindow
  146.          / -2 if that is not a known task
  147.          / -1 if that is a known task but no edit is in progress
  148.     R1 = cursor position
  149.  
  150.  Use:    Returns information about a given LineEditor edit-in-progress. This
  151.     is of use to text editors so that the cursor position is properly
  152.     reflected.
  153.  
  154. -----------------------------------------------------------------------------
  155.  
  156. LineEditor_ReadLine                    &8388A     from 2.74
  157.  
  158.  Entry: R0 -> text buffer
  159.     R1 = text buffer size
  160.     R2 = lowest character allowed
  161.     R3 = highest character allowed
  162.     R4 = password character (if password bit set)
  163.     R5 = flags
  164.         Bit   Meaning if set
  165.         0     Password-style display
  166.         1     Don't echo control characters
  167.         2-31  (reserved)
  168.     R6 = history buffer
  169.  
  170.  Exit:  R0 corrupt
  171.     R1 = chars read, excluding terminator
  172.     C set if Escape was pressed
  173.